iT邦幫忙

2024 iThome 鐵人賽

DAY 8
1
Software Development

Event driven architecture的奧妙系列 第 8

Day 8 - Asynchronous的機制 (1)

  • 分享至 

  • xImage
  •  

前言

前兩篇我們著墨在Synchronous的運作流程,實際舉兩個例子講Syn的優缺點。

接下來的兩篇文章我們會講:

  • 什麼是Async?
  • Async的運作流程
  • Async的優缺點

好了~廢話不多說,我們開始吧!!

Asynchronous

在現代的應用程式中,Asynchronous(非同步)的方法已經成為一個重要的概念,特別是需要處理大量I/O的任務長時間運行的任務時,asy能有效提升系統的效能與可擴展性。

說了那麼多,到底什麼是Asynchronous的方法?

Asy指的是應用程式可以在不等待任務完成的情況下繼續進行,任務完成後會以某種方式通知程式。
像是在Web開發時,當向伺服端發送請求後,我們不用等待伺服端的回應才能繼續執行其他操作。當伺服器回應時,會觸發回調函數或通知機制來處理這個回應。

為甚麼需要Asynchronous?

在應用程式或者是微服務,很多功能的操作會有I/O任務,比如讀寫檔案、網絡請求、資料庫相關操作等。
這些操作需要比較長時間,而syn會因為"等待"這些操作完成而卡住。
為了要解決資源浪費的問題,可以透過asy有效避免卡住,讓程式可以在等待的同時執行其他任務,提升應用的效率。

Asynchronous優點

通過剛才的說明讓大家知道什麼是Asynchronous,它有幾個優點:

  • 高效的資源利用:asy能夠更有效地利用CPU和I/O資源,避免因為"等待"而造成CPU閒置
  • 更好的使用者體驗:在前端開發中,asy的操作能讓程式在進行後台處理時不會卡住,提升使用者的互動體驗
  • High Concurrency能力:在後端開發中,asy的操作能有效提升系統的concurrency,能夠同時處理更多請求。

總結

透過我們的說明,讓大家對Asynchronous有了初步的理解,asy在微服務中扮演了重要角色,不論是前端、後端還是其他類型的應用,都能夠透過asy來提升效能和用戶體驗。理解asy的原理和優點,是每個開發者必須具備的技能。

明天我們會繼續說明Asynchronous,會舉例子讓大家對asy有更深的體悟。
好了~~今天就到這邊!!


上一篇
Day 7 - Synchronous的機制 (2)
下一篇
Day 9 - Asynchronous的機制 (2)
系列文
Event driven architecture的奧妙30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言